package com.ruoyi.ams.domain;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 流程控制对象 ams_asset_process
 * 
 * @author yfkj
 * @date 2022-05-16
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AmsAssetProcess
{
    private static final long serialVersionUID = 1L;
    /** 流程表主键 */
    @TableField(exist = true)
    @TableId(type= IdType.AUTO)
    @ApiModelProperty(value =  "${comment}")
    private Long assetProcessId;
    /** 业务编号 */
    @Excel(name = "业务编号")
    @TableField(exist = true)
    @ApiModelProperty(value =  "业务编号")
    private String businessSn;
    /** 操作类型 */
    @Excel(name = "操作类型")
    @TableField(exist = true)
    @ApiModelProperty(value =  "操作类型")
    private String operType;
    /** 操作内容 */
    @Excel(name = "操作内容")
    @TableField(exist = true)
    @ApiModelProperty(value =  "操作内容")
    private String operContent;
    /** 流程概要 */
    @Excel(name = "流程概要")
    @TableField(exist = true)
    @ApiModelProperty(value =  "流程概要")
    private String processOutline;
    /** 当前审批人主键 */
    @Excel(name = "当前审批人主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "当前审批人主键")
    private Long nowApproverId;
    /** 节点审批人主键数组 */
    @Excel(name = "节点审批人主键数组")
    @TableField(exist = true)
    @ApiModelProperty(value =  "节点审批人主键数组")
    private String approverIds;
    /** 审批意见 */
    @Excel(name = "审批意见")
    @TableField(exist = true)
    @ApiModelProperty(value =  "审批意见")
    private String approveAdvise;
    /** 最后审批人姓名 */
    @Excel(name = "最后审批人姓名")
    @TableField(exist = true)
    @ApiModelProperty(value =  "最后审批人姓名")
    private String latestApproverName;
    /** 变更人主键 */
    @Excel(name = "变更人主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "变更人主键")
    private Long updateUserId;
    /** 创建人主键 */
    @Excel(name = "创建人主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "创建人主键")
    private Long createUserId;
    /** 是否已删除(0存在 1删除) */
    @Excel(name = "是否已删除(0存在 1删除)")
    @TableField(exist = true)
    @ApiModelProperty(value =  "是否已删除(0存在 1删除)")
    private Integer isDelete;
    /** 删除人ID */
    @Excel(name = "删除人ID")
    @TableField(exist = true)
    @ApiModelProperty(value =  "删除人ID")
    private Long deleteUserId;
    /** 删除时间 */
    @Excel(name = "删除时间")
    @TableField(exist = true)
    @ApiModelProperty(value =  "删除时间")
    private Long deleteTime;
    /** 流程状态 */
    @Excel(name = "流程状态")
    @TableField(exist = true)
    @ApiModelProperty(value =  "流程状态")
    private String processStatus;
    /** 创建时间 */
    @Excel(name = "创建时间")
    @TableField(exist = true)
    @ApiModelProperty(value =  "创建时间")
    private Long createTime;
    /** 修改时间 */
    @Excel(name = "修改时间")
    @TableField(exist = true)
    @ApiModelProperty(value =  "修改时间")
    private Long updateTime;
    /** 备注 */
    @Excel(name = "备注")
    @TableField(exist = true)
    @ApiModelProperty(value =  "备注")
    private String remark;
    public static final String ASSET_PROCESS_ID="asset_process_id";
    public static final String BUSINESS_SN="business_sn";
    public static final String OPER_TYPE="oper_type";
    public static final String OPER_CONTENT="oper_content";
    public static final String PROCESS_OUTLINE="process_outline";
    public static final String NOW_APPROVER_ID="now_approver_id";
    public static final String APPROVER_IDS="approver_ids";
    public static final String APPROVE_ADVISE="approve_advise";
    public static final String REMARK="remark";
    public static final String LATEST_APPROVER_NAME="latest_approver_name";
    public static final String UPDATE_USER_ID="update_user_id";
    public static final String UPDATE_TIME="update_time";
    public static final String CREATE_USER_ID="create_user_id";
    public static final String CREATE_TIME="create_time";
    public static final String IS_DELETE="is_delete";
    public static final String DELETE_USER_ID="delete_user_id";
    public static final String DELETE_TIME="delete_time";
    public static final String PROCESS_STATUS="process_status";
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("assetProcessId", getAssetProcessId())
            .append("businessSn", getBusinessSn())
            .append("operType", getOperType())
            .append("operContent", getOperContent())
            .append("processOutline", getProcessOutline())
            .append("nowApproverId", getNowApproverId())
            .append("approverIds", getApproverIds())
            .append("approveAdvise", getApproveAdvise())
            .append("remark", getRemark())
            .append("latestApproverName", getLatestApproverName())
            .append("updateUserId", getUpdateUserId())
            .append("updateTime", getUpdateTime())
            .append("createUserId", getCreateUserId())
            .append("createTime", getCreateTime())
            .append("isDelete", getIsDelete())
            .append("deleteUserId", getDeleteUserId())
            .append("deleteTime", getDeleteTime())
            .append("processStatus", getProcessStatus())
            .toString();
    }
}
